import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

let actions = {
	//下面的：jia、jian这两个action，就是没有意义的action，因为里面不包含任何业务逻辑
	/* jia(miniStore,value){
		miniStore.commit('JIA',value)
	},
	jian(miniStore,value){
		miniStore.commit('JIAN',value)
	}, */

	//下面的：jiaOdd、jiaDyd这两个action，就是有意义的action，因为里面有业务逻辑
	jiaOdd(miniStore,value){
		//判断奇偶数（属于业务逻辑）
		if(miniStore.state.sum % 2){
			miniStore.commit('JIA',value)
		}
	},
	jiaDyd(miniStore,value){
		//开启定时器（业务逻辑）
		setTimeout(()=>{
			miniStore.commit('JIA',value)
		},500)
	}
}

let mutations = {
	JIA(state,value){
		state.sum += value
	},
	JIAN(state,value){
		state.sum -= value
	}
}

let state = {
	sum:1, //和
}

//创建并暴露一个store对象
export default new Vuex.Store({
	actions,
	mutations,
	state
})
